What is Picture to People ?

"Picture to People" (P2P) is a huge Computer Graphics project. It was started to create new softwares able to make 2D drawing, 3D rendering, vexel drawing, text effects, photo effects, image filtering and other complex Computer Graphics operations. It has been made from scratch, including its low level Computer Graphics libraries like Maccala. Nowadays, most final features produced for this project are released as free online tools available from its official website. This blog talks about Computer Graphics, mainly concerning Picture to People development.

"Only who makes has true knowledge. Knowledge is control. True power depends on total control. Only who makes from scratch has the real power."

Showing posts with label drawing. Show all posts
Showing posts with label drawing. Show all posts

Tuesday, March 24, 2015

How to create hatched drawings from photos

Have you ever tried our engraved photo drawing app that was released recently?

By using it, you can design very beautiful hatched drawings from photos. If you spend some time learning how the several configuration elements work, you can produce very artistic sketch drawings from most kinds of photos, even the most difficult to deal with.

As a special tip, beware this sketch effect app works better with input images that have a relative smooth look. Images that have many regions with high frequency textures can get overdrawn. To minimize this problem, you can choose the "Soft" drawing style and maybe apply a dark or pastel color improvement.

Below I show you a portrait transformed into a hatched drawing by using Picture to People Hatched Drawing Photo Editor.


 Subscribe in a reader

Sunday, February 15, 2015

Create engraved drawing illustrations from photos online

I have released online a new drawing photo effect app in Picture to People site. I'm glad about this, because it's a cool addition to our famous list of drawing and illustration effect photo editors.

This new photo effect app can produce very beautiful and realistic engraved drawings from portraits, landscapes or any kind of images. By using this online photo editor, it's possible to get drawing with techniques similar to woodcut, engraving, etching, and scratchboard for example.

While I intend to research a specific sketch photo effect focused on hatching drawing styles, depending on the configurations you set and your input image, you can get hatched and crosshatched drawings by using this photo sketch app.

Besides, this online sketch app was developed mainly to create pen and ink drawings, but you also can imitate other medias and styles with this free sketch software.

Below you see a cool engraved illustration photo effect designed by using the Pen and Ink Engraved Drawing Photo Effect App.


 Subscribe in a reader

Monday, February 17, 2014

Photo halftone effect generators

I have just released two new Picture to People online tools able to create halftone photo effects. Have fun using them for free.

Halftone Image Generator: developed to turn pictures or any images into kind of traditional, high quality halftones. It creates monochrome dithering drawings, but they keep the most relevant spacial and luminance information.

Colorful Photo Halftone Creator: published to generate beautiful artistic colorful halftone drawings, mainly focused on dealing with photos. This tool offers some interesting freedom degrees that let you decide the output detail level, so it can handle very detailed portraits.

Here you can see a photo and two halftone effects produced by using these new P2P softwares respectively:



 Subscribe in a reader

Thursday, December 12, 2013

Convert photos to comic drawings or cartoons online

I have released a software to create comic drawings from photos online.

This tool takes advantage of my most recent researches about color space reduction and outline generation of complex images. It's really a modern software.

Besides that, it's simple to use, but yet very powerful. By changing its interface values, you can create a very nice comic art from almost any kind of picture.

Below I show a photo and a comic drawing created by using the Photo to Comic Drawing Converter. As you can see, a beautiful drawing was generated and all important information from original photo was kept.




 Subscribe in a reader

Saturday, June 29, 2013

An easy way to draw lighting bolts

Recently I was programming some stuff by using Maccala and some other P2P libraries. They are here to make Computer Graphics as easy as possible.

There was a moment when I needed to draw a vector lighting bolt symbol. What a boring task !!! It's harder than we imagine at a first sight. Twenty minutes after beginning this job, it was clear to me: I really wanted an easy way to make that kind of drawings we use to represent bolts.

I spent some time, but I created a method to generate any kind of lighting bolt. I made it so configurable as I could imagine, what turned the mission into something more complicated.

Maybe it doesn't look very interesting for you, but, from now on, I can save my fingers every time I need to render something like the drawings you see below. I prefer to work hard once, so I can be lazy many other times. :)



 Subscribe in a reader

Wednesday, June 19, 2013

Drawing curves with progressive thickness

Here I show you one more recent improvement for my vector based rendering library called Maccala.

Now it's possible to create any kind of curve with an arbitrary progressive thickness. I guess it's kind of strange I have never developed this before, but I have never needed something like this until now.

Surprisingly, it was harder to develop than I imagined initially. It was needed to redevelop my algorithm responsible for creating a thick shape based on a Math curve (conceptually a curve has no thickness at all).

In fact, in a generic algorithm, even drawing operations (in this context, "draw" means "render the contours") are tackled as filling jobs. First an assembling algorithm constructs a shape with an arbitrary thickness, so a filling algorithm can render it.

Below you can see a curve drawn with variable thickness. Now it's possible to make something like this so easily as calling a method. Unnecessary to say, the professional anti-aliased rendering is still there.
 Subscribe in a reader

Saturday, June 15, 2013

Sub-pixel precision drawing for vector based render engines

I'm really impressed with the fine quality increase I got by improving the sub-pixel precision of my 2D render engine, which I use in Maccala library. I don't need to make any more some post-processing operations when rendering some complex text effects.

I have received some emails from colleagues asking about this change after I talked about this improvement here. They are CG developers too and were kind of confused about what I meant in my previous post about this subject called "Subpixel vector drawing with professional antialiasing".

First of all, don't be confused between "sub-pixel positioning" and "sub-pixel precision". In the first one, we know how to properly draw the bodies despite they can be in fractionary positions, but it doesn't mean we can draw bodies smaller in size than one pixel.

As an example, I borrowed an image from the webpage about Maccala's features. You can see many line segments with a progressive thickness. All of them are positioned in sub-pixels positions, but just the first one is thinner than one pixel (its thickness is 0.5).
In fact, the real elegance of my algorithm is that it had always been ready to draw shapes and curves with any precision. To make it really work for unbelievably tiny precision limits, I just needed to improve the Math about some boundary conditions.

Of course, nothing comes really for free. To keep the professional anti-aliased results when using "microscopic" measures, the algorithm must be used with extreme parameters, decreasing its big rendering speed.

 Subscribe in a reader

Thursday, May 23, 2013

Subpixel vector drawing with professional antialiasing

I have made a great improvement to Maccala's 2D vector based rendering engine.

Now the drawing library is able to render arbitrary curves with an outstanding precision, so the resulting antialiased drawings have an astonishing quality.

Maccala have already been using the rasterizing algorithm I researched and developed myself. Now I have improved it to draw even better curves with a thickness smaller than one, and there is an important things about it: this upgrade didn't take to a performance loss.

Most drawing algorithms just can't draw anything narrower than 1 pixel. When they need to do it, they just change the curve/shape color to a value closer to the background color, so the curve looks "less visible" - it's just a cheat. Inkscape, for example, make it this way (at least it made when I used to work with it).

My algorithm doesn't cheat you. It really can draw with a sub-pixel precision by using the selected color and with a very impressive antialiasing level. Sub-pixel curves made the right way seem thinner than the ones created by using the trick I explained above.

Below I show you a text normally rendered (filled) with a reasonably complex font. So you see the outline of the same text rendered with a thickness of 1 pixel. The next drawing is the same, but the curves have a thickness of 0.5. Finally, the last outline has just the tiny thickness of 0.25 pixel, but the quality is perfect.


 Subscribe in a reader

Wednesday, January 16, 2013

Realistic metallic text effects online

Picture to People offers the most professional and realistic online metallic text effects you can find online. Since there are really many metallic effect choices involving several softwares, sometimes can be a little hard to find the best effect for your needs.

To make your life easier, I published a page that lists directly most of our available metallic text effect tools, so you can quickly find the right text effect for each case. There are so many effects online that for sure P2P has a metallic text for all situations you can imagine, no matter if you are making a banner for a site, blog, your Facebook, or whatever.

Do you want to know how to create the best metallic text effects online? Don't waste your time. Visit right now the Online Metallic Text Effects page.

These free online metallic text generators are easy to use and intuitive. Most times you don't even need tutorials to make realistic 3D metallic texts instantly. Design skills are not a prerequisite. It's worthy notice that many of our text effects can be generated with a transparent background, so you can use the text images over any background with perfect results.

Bellow I show you two realistic 3D metallic texts I created in few seconds by using the P2P metallic text effect creators. The first one is a dirty 3D metallic text and the second is a rusty 3D metallic text effect.




 Subscribe in a reader

Tuesday, October 30, 2012

Rendering engine with professional anti-aliasing

Picture to People already had one of the most professional 2D vector based rendering engines in the market. This engine is part of my Maccala library and it has proved to be very fast, precise and reliable these last years, because it was successfully used to create most text and photo effects P2P already offers.

Anyway, recently I have discovered a small bug that only happened in very special conditions related to clipping operations. By the way, it's worthy to know that all vector based drawing operations are "clipping aware" or, in other words, shapes are drawn naturally clipped.

This problem was very subtle and affected just the bound pixels close to the clipping frame. In specific conditions, the ingenious (integer based) calculations of the renderer could need to deal with unexpected negative values, generating wrong results.

Below you can see a wrong rendering (left side) and a correct one (right side). The blue squares represent the clipping windows and the small red squares highlighted the region that failed in the left drawing.


Here I show the small regions increased 10 times in size, so you can see clearly the wrong pixels and how they were fixed in right side image.



Now my 2D anti-aliased drawing algorithm is even more precise, and it's not all. Seizing the opportunity and the knowledge I acquired these last years, I have improved the algorithm speed even more. After these recent optimizations, the drawing operations are kind of 17% faster for most cases.

P2P keeps its commitment to offer the most professional softwares, so you can generate more and more outstanding results.

 Subscribe in a reader

Friday, October 14, 2011

Inspiration: the best graffiti text effects

Picture to People site has a page called The Best Graffiti Text Effects. It's a nice place to you see many amazing samples of what our Graffiti Text tool can make.

Using a so powerful software can be a little tricky, so it could be important to read the good tips at the renderer page. There are many options to configure if you want, but you can learn them in few time if you follow that suggestions. Furthermore, I hope soon I can post some tutorials about graffiti effects at the blog about text effects.

Feel inspired by so many good graffiti text examples and start creating your own graffiti right now! You can get astonishing realistic 3D effects.

Subscribe in a reader

Wednesday, July 13, 2011

Maccala improvement: Curves simplification again

The first implementation I did for curves optimization was good, but not good enough. In very extreme situations, the algorithm could fail, so the result of simplification was a curve with a different shape from its original form.

After some more hard work, I could finally develop an algorithm that I was not able to make fail, even when simplifying the more bizarre font faces I have ever found in my whole life.

Below I show some more tests made using even more weird and complex fonts than the ones tried before. It's never easy, but my vector drawing library is getting more and more powerful.





Subscribe in a reader

Saturday, June 25, 2011

Maccala improvement: Curves optimization

Picture to People Project has the best and biggest set of text effects around the Internet and much more will be released yet. It was possible just because our software haa a strong foundation: our low level libraries are powerful and are constantly upgraded.

These days I have been improving Maccala again. The vector based rendering engine is receiving an important optimization: an algorithm able to make curve simplification with almost zero quality lost. The main advantages this technique will bring are:

- reduced memory usage for curves/fonts representation;
- faster 2D curve drawing;
- faster set operations over polygons;
- faster 2D font rendering;
- faster 3D text rendering.

In fact, my biggest motivation to make this right now is to help to accelerate the realistic 3D text renderer I'm developing, but many vector based P2P tools will benefit from that.

Most time I use the font rendering engine to test this optimization. If the algorithm can simplify strange fonts with no visible quality loss, so I can suppose it's working correctly.

Since I'm very excited about this improvement, I show below some examples about what it can do and how it works. Each image shows the simplification of an "a" letter of a different font. At left, you can see the points representation and at right the generated drawing.

The tiny black dots are the points used to create the character; the black continuous curves regions usually are dozens or even hundreds of points very close to each other and they just happen in the non-simplified (top-left) chars. What is important here is: when a simplified "a" is drawn, it has the same looking than the non-simplified one, so the quality decreasing is negligible. The simplification has been made to be a nondestructive process.





Subscribe in a reader

Saturday, June 18, 2011

Maccala improvement: Adaptive Curves

Picture to People makes vector based drawing using Maccala API. It's very powerful and robust, so P2P has many tools that make/use 2D rendering.

Anyway, there was a small problem when drawing curves. They are more difficult to render when they have these two properties at the same time:
1) to have very strong or sharp curvatures;
2) to be too thick.

In this situation, some curves were not drawn smoothly as they should be. It's what I show you in the first image below. You see a curve skeleton and its version with a thickness of 150. Basically the thin curve shows how smooth it really is, but the thick one is not that smooth.

I improved Maccala and now it has adaptive curve drawing. In practice, it means Maccala can draw perfectly even very thick regions that are too curved. The second image shows the same curve as before, but perfectly drawn using my adaptive rendering algorithm.

Now Picture to People can draw super professional 2D vector curves even in the more unfavorable situations. It can help, for example, to draw in higher quality a thick outline of some very weird and complex True Type fonts.



Subscribe in a reader

Friday, May 6, 2011

Maccala improvement: Polygon filling modes

During these last years, this blog showed the development of my 2D drawing library called Maccala. I really passed through many problems and challenges since I started it more than four years ago.

Nowadays I have a very comprehensive, professional, powerful and robust library for 2D drawing, font rendering and vector based effects, but I knew it had a point to be solved: the polygon filling modes. Since its first days, the library had only the alternative filling mode. I always knew about this weakness, but I have let it behind, since its only mode always was enough to my needs until now.

Currently I'm developing a new sub-library especially to make typography effects. At this point, the lack of another filling mode became a barrier to creation of my new effects.

I'm (finally) implementing the winding filling mode in Maccala. Since it's more complex by nature, I'm taking a big care about performance, so I can draw using any filling mode with no (or very few) performance penalty.

If you don't know what I'm talking about, let's put it simple: the winding mode can be imperative when filling some kinds of polygons that have self-intersection. This kind of polygon is very common, mainly when you make some operations like polyline thickness widening.

Below there is a simple example. First I show a self-intersected polygon. Second I show the same polygon filled using the alternative mode. As you can see, a colateral effect of this technique is that, in this case, the polygon is not completely filled. Finally I show the winding mode applied to our polygon. It has the behavior we usually want in this situation: the polygon is totally filled.



Subscribe in a reader

Sunday, February 13, 2011

The next generation of pencil drawing effects

As an evolution of the researches I made to develop the "Photo Sketch" feature, I developed a new amazing tool to turn pictures in colorful pencil drawings.

I have long experience as developer of artistic graphic effects and I think it is my best software to create complex realistic drawings from photos. It has many interesting properties:

- it's can be super realistic if you use it correctly;
- the strokes can be even more delicate and detailed;
- taking in account the renderer complexity, its processing time is short;
- it has no limitations concerning number of strokes.

Below I show what this new feature is able to make:


This new tool was already released. You can use it in Picture to People site, at the Photo Colorful Drawing section.


Subscribe in a reader

Sunday, May 30, 2010

Drawing lights 2

As promised, here I show some more lights I could already draw.

There are many variables to regard when drawing a good light source and I'm trying to get a versatile software here. It's not an easy subject, is it?

I'm doing a preliminary development yet, but I'm happy I could already show some screenshots.


Subscribe in a reader